Package-level declarations

Types

Link copied to clipboard
class ArgbImage(val width: Int, val height: Int, val argb: IntArray)

A decoded raster in 0xAARRGGBB layout — the one pixel format every target can hand to its native bitmap type without re-shuffling channels (BufferedImage.TYPE_INT_ARGB, Android Bitmap.Config.ARGB_8888, a 2D canvas' ImageData, a Core Graphics context).

Link copied to clipboard
open class BitmapTexture(bitmap: Bitmap, isRecycleOnLoad: Boolean = true) : Texture
Link copied to clipboard

Image config indicates the in-memory representation for images displayed by WorldWind components. Images are typically represented in the 32-bit RGBA_8888 configuration, the highest quality available. Components that do not require an alpha channel and want to conserve memory may use the 16-bit RGBA_565 configuration. Accepted values are RGBA_8888 and RGB_565.

Link copied to clipboard
class ImageData(val width: Int, val height: Int, val rgba: ByteArray)

Tightly packed RGBA8888 image carrier — what flows from ImageDecoder into ImageTexture for GL upload. The byte layout is RGBARGBA... with premultiplied alpha, matching what glTexImage2D(GL_RGBA, GL_UNSIGNED_BYTE, ...) expects.

ImageDecoder
Link copied to clipboard
open class ImageDecoder(val context: Context) : Closeable
open class ImageDecoder

iOS image decoder. Mirrors the JVM/Android decoder shape (an HTTP client + per-source dispatch), but uses ImageIO.framework via UIImage as the decode backend. Output is always RGBA8888 premultiplied — the simplest format to upload through the Kgl texImage2D(ByteArray) overload without needing platform-specific GL extensions.

open class ImageDecoder : Closeable
Link copied to clipboard
open class ImageOptions @JvmOverloads constructor(var imageConfig: ImageConfig = ImageConfig.RGBA_8888)

Options for images displayed by WorldWind components.

Link copied to clipboard
actual open class ImageSource : AbstractSource

Provides a mechanism for specifying images from a variety of sources. ImageSource retains the image source on behalf of the caller, making this information available to WorldWind components that load images on the caller's behalf.
ImageSource supports following source types:

actual open class ImageSource : AbstractSource

iOS ImageSource. Mirrors the JS / JVM shape: an AbstractSource holding either an ImageResource, a URL string, an arbitrary Any, or an ImageFactory subclass.

actual open class ImageSource : AbstractSource

Provides a mechanism for specifying images from a variety of sources. ImageSource retains the image source on behalf of the caller, making this information available to WorldWind components that load images on the caller's behalf.
ImageSource supports following source types:

actual open class ImageSource : AbstractSource

Provides a mechanism for specifying images from a variety of sources. ImageSource retains the image source on behalf of the caller, making this information available to WorldWind components that load images on the caller's behalf.
ImageSource supports following source types:

ImageTexture
Link copied to clipboard
open class ImageTexture(image: ImageData) : Texture

iOS GL texture backed by tightly-packed RGBA8 bytes from ImageDecoder. The pixel format is fixed to RGBA8 (premultiplied) — same as Android and JS — so the standard texImage2D(ByteArray) overload can upload directly without extra format conversion.

open class ImageTexture(image: BufferedImage) : Texture
open class ImageTexture(image: TexImageSource, width: Int, height: Int) : Texture
Link copied to clipboard
expect open class ImageTile(sector: Sector, level: Level, row: Int, column: Int) : Tile, ResourcePostprocessor
actual open class ImageTile(sector: Sector, level: Level, row: Int, column: Int) : Tile, ResourcePostprocessor
actual open class ImageTile(sector: Sector, level: Level, row: Int, column: Int) : Tile, ResourcePostprocessor
actual open class ImageTile(sector: Sector, level: Level, row: Int, column: Int) : Tile, ResourcePostprocessor
Link copied to clipboard

Resampling mode indicates the image sampling algorithm used by WorldWind to display images that appear larger or smaller on screen than their native resolution. Accepted values are BILINEAR and NEAREST_NEIGHBOR.

Link copied to clipboard
open class RgbaTexture(rgba: ByteArray, width: Int, height: Int) : Texture

Texture backed by a tightly-packed, top-row-first RGBA8 byte array — the output of the KTX2 / Basis-Universal transcoder (KHR_texture_basisu), which has no platform image object to wrap. Mirrors ImageTexture's vertical flip and mipmap policy so basisu textures line up with glTF UVs exactly like the JPEG/PNG path, and premultiplies alpha to match the engine's premultiplied blend (GL_ONE, GL_ONE_MINUS_SRC_ALPHA).

Link copied to clipboard

Wrap mode indicates how WorldWind displays the contents of an image when attempting to draw a region outside of the image bounds. Accepted values are CLAMP and REPEAT.

Link copied to clipboard
class ZipEntryImageRef(val zip: ZipFile, val entry: String)

Marker source for an image stored inside an open ZipFile (e.g. a .kmz texture), decoded on demand by the platform ImageDecoder so the archive is never extracted to disk. Wrapped via ImageSource.fromUnrecognized. Equality keys on the archive identity + entry name so the render resource cache shares and evicts these like any other texture; the zip must stay open for the lifetime of the consuming scene.

Functions

Link copied to clipboard
actual fun argbImageSource(key: Any, factory: suspend () -> ArgbImage?): ImageSource

Wrap a lazily produced ArgbImage as an ImageSource. factory runs off the render thread when the image is first needed and may return null when the pixels turn out to be unavailable; it may also be called again after a texture eviction, so it must stay repeatable.

expect fun argbImageSource(key: Any, factory: suspend () -> ArgbImage?): ImageSource

Wrap a lazily produced ArgbImage as an ImageSource. factory runs off the render thread when the image is first needed and may return null when the pixels turn out to be unavailable; it may also be called again after a texture eviction, so it must stay repeatable.

actual fun argbImageSource(key: Any, factory: suspend () -> ArgbImage?): ImageSource

Wrap a lazily produced ArgbImage as an ImageSource. factory runs off the render thread when the image is first needed and may return null when the pixels turn out to be unavailable; it may also be called again after a texture eviction, so it must stay repeatable.

actual fun argbImageSource(key: Any, factory: suspend () -> ArgbImage?): ImageSource

Wrap a lazily produced ArgbImage as an ImageSource. factory runs off the render thread when the image is first needed and may return null when the pixels turn out to be unavailable; it may also be called again after a texture eviction, so it must stay repeatable.

actual fun argbImageSource(key: Any, factory: suspend () -> ArgbImage?): ImageSource

Wrap a lazily produced ArgbImage as an ImageSource. factory runs off the render thread when the image is first needed and may return null when the pixels turn out to be unavailable; it may also be called again after a texture eviction, so it must stay repeatable.

Link copied to clipboard

Renderer-ready ImageSource for pixels that are already decoded. The image itself is the cache key, so the source is identity-comparable like any other in-memory bitmap.